Learning Objectives

After successfully completing this section, you should be able to

  1. outline the principles of network applications.
  2. describe the relationships between some well-known network applications and their underlying application layer protocols.
  3. list and describe some widely used network applications.

Learning Tasks

Required:

  1. Watch the slideshow for this section.
  2. Study Section 2.1, Principles of Network Applications, in the textbook.

Suggested:

  1. Browse the IETF website at https://www.ietf.org/ and select some relevant documents to read. Post the links to the course forum with your comments.

Terms and Topics

Section 1 – Principles of Network Applications

Principles of network applications
Network application architecture
Client-server architecture
Data center
P2P architecture
Self-scalability
Processes and communication between processes
Socket as a software interface
Application Programming Interface (API)
IP address and port number
Reliable data transfer

Loss-tolerant applications
Bandwidth-sensitive applications
Elastic applications
transport layer services
TCP services
UDP services
TCP connection
Application-layer protocols
HTTP
FTP
SMTP

Leading Questions

  1. Define the term network applications. What are the most used network applications?
  2. What are computer network protocols?
  3. What are the relationships between network applications and application layer protocols?
  4. What does an application-layer protocol define?
  5. Where can the specifications of network application layer protocols be found?
  6. Which organization oversees these specifications?
  7. What is a network application server, and what is a network application client?
  8. How are computers on the Internet addressed?
  9. How are IP addresses resolved from the literal names of network nodes?
  10. What is a port? What port numbers are used for what popular application-layer protocols?
  11. What is the Web’s application layer protocol?
  12. What application-layer protocols are used for electronic mail?
  13. What is a user agent?
  14. What is a loss-tolerant application? Provide examples.
  15. What is bandwidth? What is a bandwidth-sensitive application?
  16. What are elastic applications?
  17. What are real-time network applications? Provide examples.
  18. What services should be provided to application layer protocols by transport layer protocols?
  19. What applications does TCP support? What applications does UDP support?